home *** CD-ROM | disk | FTP | other *** search
- // ===============================================================
- // Vertex Program:
- // Description:
- // Last Update: 14/08/2003
- // Coder: Andrey Honich
- // ===============================================================
-
- #include "../CGVPMacro.csi"
-
- Noise
- Projected
-
- Param4f ( Name = NoisePos Comp 'time 0.8' Comp 'time 0.6' Comp = 0 User 'WaveAmplitude') // xy = wavepos, z = 0, w = amplitude
-
- MainInput { VIEWPROJ_MATRIX, uniform float4 NoisePos, CAMERA_POS, uniform float4 TexShiftRipple, uniform float4x4 TexProjMatrix, uniform float4 pg[66] : register(c30) }
- DeclarationsScript
- {
- IN_T0_C0
- OUT_T0_T1_T2_T3_C0
- }
- PositionScript = PosWaterDeform
- CoreScript
- {
- float4 vTex = IN.TexCoord0;
- OUT.Tex0.xy = vTex.xy + TexShiftRipple.xy;
- OUT.Tex3.xy = vTex.xy + TexShiftRipple.xy;
-
- float4 vProjTex = mul(TexProjMatrix, vPos);
- vProjTex.xy = vProjTex.xy + fNoise * CameraPos.w;
- #ifdef PROJECTEDENVBUMP
- OUT.Tex1 = vProjTex;
- #endif
- #ifdef OTHER
- OUT.Tex1.xy = vProjTex.xy / vProjTex.w;
- #endif
-
- float3 eyeVec = normalize(CameraPos.xyz - vPos.xyz);
- OUT.Tex2.xy = eyeVec.zz;
-
- OUT.Color = IN.Color;
- }
-